Peer-to-peer access of personalized profiles using content intermediary

ABSTRACT

A method for personalizing content for a particular user in a computing system comprising a user interface configured to display content. The method comprises identifying a content item accessed by a user, identifying features associated with the content item; using the features of the content item to identify one or more third party profiles that substantially match a content profile of the content item, and displaying a list of the identified third party profiles.

CROSS-REFERENCE TO RELATED APPLICATIONS

This applications is a continuation of U.S. patent application Ser. No.14/107,989, filed Dec. 16, 2013 (now allowed), which is a continuationof U.S. patent application Ser. No. 12/031,389, filed Feb. 14, 2008 (nowU.S. Pat. No. 8,612,869), which claims priority to and benefit from U.S.Provisional Patent Application Ser. No. 60/892,201, filed Feb. 28, 2007.The disclosures of the above-referenced applications are expresslyincorporated herein by reference to their entireties.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to personalization of content. Moreparticularly, the present invention relates to user interface techniquesand active and passive personalization techniques to enhance a user'spersonalization experience.

2. Background

With more and more content being continually added to the world wideinformation infrastructure, the volume of information accessible via theInternet, can easily overwhelm someone wishing to locate items ofinterest. Although such a large source pool of information is desirable,only a small amount is usually relevant to a given person.Personalization techniques are developing to provide intelligentfiltering systems to ‘understand’ a user's need for specific types ofinformation.

Personalization typically requires some aspect of user modeling.Ideally, a perfect computer model of a user's brain would determine theuser's preferences exactly and track them as the user's tastes, context,or location change. Such a model would allow a personal newspaper, forexample, to contain Sonly articles in which the user has interest, andno article in which the user is not interested. The perfect model wouldalso display advertisements with 100% user activity rates (i.e., aviewer would peruse and/or click-through every ad displayed) and woulddisplay only products that a user would buy. Therefore, personalizationrequires modeling the user's mind with as many of the attendantsubtleties as possible. Unfortunately, user modeling to date (such asinformation filtering agents) has been relatively unsophisticated.

However, personalization content as well as profiles can be difficultfor users to digest, especially where such content is dispersed througha web page that often requires a large amount of scrolling. Furthermore,developing a personalization profile can be cumbersome and timeconsuming. Fill-in profiles represent the simplest form of user modelingfor personalization technology. A fill-in profile may ask for userdemographic information such as income, education, children, zip code,sex and age. The form may further ask for interest information such assports, hobbies, entertainment, fashion, technology or news about aparticular region, personality, or institution. The fill-in profile typeof user model misses much of the richness desired in user modelingbecause user interests typically do not fall into neat categories.

Feature-based recommendation is a form of user modeling that considersmultiple aspects of a product. For example, a person may like moviesthat have the features of action-adventure, rated R (but not G), andhave a good critic review of B+ or higher (or 3 stars or higher). Such amultiple-feature classifier such as a neural network can capture thecomplexity of user preferences if the interest is rich enough.Text-based recommendation is a rich form of feature-basedrecommendation. Text-based documents can be characterized using, forexample, vector-space methods. Thus, documents containing the samefrequencies of words can be grouped together or clustered. Presumably,if a user selects one document in a particular cluster, the user islikely to want to read other documents in that same cluster.

However, it would be advantageous to provide a user with apersonalization experience that generates positive perceptions andresponses that encourage users to want to use the personalizationservice, while avoiding those negative perceptions that would discourageusers from using the system, in an unintrusive manner so that the usercan view content in a manner with which they are already familiar.Positive perceptions from the point of view of a user include, easilydeveloping a profile, easily viewing third party profiles, and easilyviewing potentially interesting content.

BRIEF SUMMARY

The principles of the present invention relate to a method forpersonalizing content for a particular user in a computing systemcomprising a user interface configured to display content. The methodcomprises identifying a content item accessed by a user; identifyingfeatures associated with the content item; using the features of thecontent item to identify one or more third party profiles thatsubstantially match a content profile of the content item; anddisplaying a list of the identified third party profiles.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

Additional features and advantages will be set forth in the descriptionwhich follows, and in part will be obvious from the description, or maybe learned by the practice of the teaching herein. The features andadvantages of the teaching herein may be realized and obtained by meansof the instruments and combinations particularly pointed out in theappended claims. These and other features will become more fullyapparent from the following description and appended claims, or may belearned by the practice of the invention as set forth hereinafter.

BRIEF DESCRIPTION OF THE DRAWINGS

To further clarify the present invention, a more particular descriptionof the invention will be rendered by reference to specific embodimentsthereof which are illustrated in the appended drawings. It isappreciated that these drawings depict only typical embodiments of theinvention and are therefore not to be considered limiting of its scope.The invention will be described and explained with additionalspecificity and detail through the use of the accompanying drawings inwhich:

FIG. 1 illustrates an exemplary user interface displaying an image cloudused to obtain initial interests of a user for an exemplarypersonalization service.

FIGS. 2A and 2B illustrate an exemplary user interface displaying animage cloud used to display recommended content to a user for anexemplary personalization service.

FIG. 3A illustrates an exemplary method for using an image cloud toobtain initial interests of a user.

FIG. 3B illustrates an exemplary method for using an image cloud todisplay recommended content to a user.

FIG. 4A illustrates an exemplary user interface displaying an imagecloud used to display popular recommended content to a user for anexemplary personalization service.

FIG. 4B illustrates an exemplary method for using an image cloud todisplay popular content to a user.

FIG. 5A illustrates an exemplary user interface displaying an imagecloud used to display search content to a user for an exemplarypersonalization service.

FIG. 5B illustrates an exemplary method for using an image cloud todisplay search content to a user.

FIG. 6A illustrates an exemplary user interface displaying a profileimage cloud.

FIG. 6B illustrates an exemplary method for displaying a profile imagecloud.

FIGS. 7A through 7D illustrate an exemplary user interface displaying aprofile image cloud for three contacts of the user.

FIG. 8 illustrates an exemplary user interface displaying an updatedprofile image cloud.

FIG. 9 illustrates an exemplary user interface displaying updatedrecommended content based from the updated profile image cloud.

FIG. 10 illustrates an exemplary network environment for performingaspects of the present invention.

FIG. 11 illustrates a process for generating a profile for a contentitem.

FIG. 12 illustrates an exemplary profile.

FIG. 13 illustrates an exemplary method for personalizing content for aparticular user.

DETAILED DESCRIPTION Introduction

The present invention relates to using the concept of “personalization”in a computer network environment to deliver the most relevant possibleexperiences to customers, driving significant factors such as customersatisfaction and customer loyalty. Embodiments of the present inventioncontemplate a layered, portable, personalization platform that canpresent various personalized content sources including, but not limitedto: (1) portal to access web services; (2) feeds and favorites; (3)recommended content; (4) network and channel content promotions; (5)search results; (6) advertisements; and (7) social networks. One benefitof the present invention is that it eliminates the requirement for auser to actively seek feed sources or to mark favorites in order toprovide the user with personalized content. The present inventionautomatically identifies relevant content based on the personalizationtechniques presented herein. While the focus of the present invention isto provide personalized content to a user, embodiments may also becoupled with customizable features to provide even more customersatisfaction and customer loyalty. Aspects of the user interface for thepersonalized platform will first be described, following which will bedetails relating to the implementation of personalization techniques,including the underlying system of the platform.

DEFINITIONS

The following provides various definitions that will assist one of skillin the art to understand the teachings of the present invention. Itshould be understood that the terms are intended to be broadly construedrather than narrowly construed.

Entity: any user or content item that can be characterized as having an“interest.” Examples of an entity include a person, article, image, webpage, movie clip, audio clip, feed, promotion, and the like.

User: any person or entity. In some cases, the “user” can be representedby a screenname or other anonymous identifier. A known user (whoseidentity is known) and an anonymous user (who can be identified throughtracking technology) can have Profiles. An opt-out user is one who hasaffirmatively elected to opt-out of having an Profile identified forthat user. However, an opt-out user can still have access to certainpersonalization features of the present invention.

Content item: any information that can be displayed or played (e.g.,audio file or multimedia file) on a communication device operated by auser.

Feature: generally, a word or textual phrase used to describe an entity.E.g. “football”, “baseball”, “San Francisco”, “bring”, etc. The conceptof a feature is not limited to such phrases and can be extended torepresent such things as a category, the source of a feed, the colors oficons, the existence of images in a story, etc.

Feature set or Feature vector: a set of features associated with anentity.

Interest: the weighted importance of a feature. E.g., baseball can havetwice the weighted value as football. There are both positive andnegative interests weightings. They can represent like/dislike (a personlikes football and dislikes baseball). An interest can be based on anumber of factors such as the number of times a feature appears in anarticle, the user's exhibited interest or lack of interest in a feature,etc.

Interest set or Interest vector: a set of interests associated with anentity.

Profile: a set of feature vector(s) and/or interest vector(s) associatedwith an entity.

Composite Profile: two or more Profiles combined to generate contentbased on the combination of the two or more Profiles

Passive: gathering information about an entity by transparentlymonitoring its activities.

Active: gathering information about an entity by having the entityknowingly express likes and dislikes.

Positive: gathering information about an entity in response to positiveuser interest.

Negative: gathering information about an entity in response to negativeuser interest.

Static Entity: An entity whose Interest Vector does not change over time

Dynamic Entity: An entity whose Interest Vector change over time andcould have multiple “snapshots” of Interest Vectors based oncontext/time.

Image Clouds for Presenting Personalized Content

FIGS. 1 through 5 illustrate various aspects of a content recommendationservice 100 that includes various interfaces that present content to auser and through which a user is able to interact, and that uses passiveand active personalization to provide a user with personalized content.Optionally, although not shown, the content recommendation service mayinitially display an entrance page briefly describing the recommendationservice and providing an entrance link.

Upon entering the recommendation service 100, as shown in FIG. 1, theuser is presented with a bootstrap image cloud 105 having a plurality ofinitial images 104. In one embodiment, the images 104 may be determinedand presented based on known user demographics and/or user interests,such as from a fill-in type survey. The images 104 may also be selectedbased on past searches, past browsing history, past purchases, and thelike, previously performed by the user. If user demographics, userinterests, or other user activity is not known, the images 104 may beselected from a pool of ‘popular’ images or a set of images thatrepresent various broad categories to try to identify user interests.

A user is able to select one or more of the images 104 in the bootstrapimage cloud 105 to indicate his interest in receiving more contentrelated to the category or subject matter of the image. Advantageously,the bootstrap image cloud 105 with initial images 104 provides a way toseed the recommendation system with initial user interests. The initialimage cloud 105 essentially acts as a conversation starter between theuser and the recommendation system that is much easier, more appealingand enjoyable to use than traditional lengthy fill-in type survey forms.As shown in FIG. 1, the user selects one or more images 104A, 104B, asindicated by the “thumbs up” icon on these images and any others theuser feels compelled to select, which the recommendation service(described below) will use to automatically find content personalized tothat user.

FIG. 1 introduces the concept of an “image cloud” that will be referredto at various times throughout this disclosure. An image cloud enablesthe user or a third party to easily capture content of interest to theuser or third party in a visually appealing manner as well as conveyinga large amount of information than could be conveyed using simple text.As shown in FIG. 1, the images in the image cloud are grouped anddisplayed adjacent or in close proximity with each other in onepredefined area. The placement of the images minimizes content such astext, spacing or other content, between the images. Thus, an image cloudvisually represents information in the form of images in a manner that auser or other third party can easily comprehend the images. Suchinformation that can be visually represented by an image cloud may be abootstrap method, user profile, recommendations, popularity (what's hot)content, search results, and the like. This enables a user or thirdparty to view and/or select images in the image cloud without requiringa user or other third party to use extensive navigation methods to findimages, such as scroll bars, excessive mousing movements, extensivewindow resizing, or the like. Thus, the image cloud also minimizes thenavigation methods required to locate the plurality of imagesrepresenting visually representing information of interest.

The term “bootstrap” is appended before the term “image cloud” simply todescribe one embodiment of using image clouds to assess initial userinterests. However, the term bootstrap should not be construed aslimiting in any way to the scope of the present invention. Furthermore,while the drawings show the bootstrap image cloud as having images ofthe same size located in an array, the size, shape, and/or placement ofthe images can vary based on design considerations. While one advantageof the present invention is to attempt to minimize the amount of contentlocated between the image clouds, it will be appreciated that thepresent invention also encompasses variations of image clouds thatinclude a minimal amount of text between and/or overlapping the imagesof the image clouds.

In one embodiment, each image in the bootstrap image cloud 105 relatesto a particular category or channel, such as, but not limited to,politics, elections, world, business/finance, sports, celebrities,movies, food, home, fashion, health, real estate, gaming, science,automobiles, architecture, photography, travel, pets, and parenting. Anexample of this embodiment is where an image represents “politics,” anddisplays the President of the United States to visually representpolitically-related content. In one embodiment, hovering over an imagecauses a descriptor to appear specifying the particular category. Thecategories can be broad or narrow. Content displayed in response toselection of a category image may produce content based on popularityand may not necessarily correspond with the image itself. In otherwords, selecting an image of the President of the United States mayproduce feeds related to the most popular current political issues andon a particular day may not necessarily be related to the President ofthe United States. In this situation, the image of the President of theUnited States is used symbolically to represent a category since thePresident is a well-known political figure.

In another embodiment, the initial images can relate to a particularinterest (described below) describing the subject matter specific to theimage. In this example, the image of the President of the United Statesmay actually visually represent actual content related specific to thePresident of the United States rather than to the category of politics.As discussed below, where features are assigned to a particular image,interests can also be assigned. Selection on this type of image producesfeeds related specifically to the image itself because the featurevector(s) and/or interest vector(s) (i.e., Profile described below) isused to identify content specifically related to the Profile of theimage is produced. In addition, the Profile can be used to furthertailor presentation of content based on concepts of sameness andimportance, described below. Thus, selection of the image displaying thePresident of the United States would produce feeds related specificallyto the President of the United States.

As will be discussed below, when a request is received to generate animage cloud, the personalization system accesses an image bank to matchimages based on category or features/interests. The personalizationsystem also accesses a content bank to access other content, such asfeeds, articles, etc., that relate to the category or features/interestsidentified by the user. The images can further be associated withfeatures/interests so that when a user selects a particular image, thepersonalization system generates content related to the image. Imagescan also contain a link that redirects users to a content providerwebsite.

FIG. 2A illustrates another aspect of the recommendation service afterthe user has initially seeded her interests, for example, usingbootstrap image cloud 105. In one embodiment, FIG. 2A illustrates arecommendations page 106 that is accessible via a tabulation 108. Inaddition, tabulation 110 can be used to select a popularity page andfield 112 can be used to perform a search.

Recommendations page 106 includes image recommendations 114 thatpictorially depicts a user's interests via images such as images 115,116. For example, images 115 and 116 visually depict topics or personsthat the user has expressed interested in. The collection of imagerecommendations 114 will also be referred to herein as a “recommendationimage cloud.” Advantageously, a recommendation image cloud provides asnapshot view of the content that is currently available based on thecurrent interests of a user. Preferably, these images also relate tocontent that the user will most likely be interested in. Recommendationspage 106 may also include recommendations in the form of textrecommendations 118. This can also be referred to as an “inbox” ofrecommended current content that the user is most likely interest in.Text recommendations 118 include feed content related to the topics orpersonalities that may or may not be linked to images displayed in therecommendation image cloud 114. Selecting a text recommendation mayprovide various types of feed content, such as, but not limited to,articles, web pages, video clips, audio clips, images, and the like.

FIG. 2A illustrates that images in image recommendations 114 and feedcontent in text recommendations 118 relate to the original selections ofthe user from the bootstrap image cloud 105. In one embodiment, a usercan review the image recommendations 114 and affirm or change what ispresented to the user. User input can also affect what appears in textrecommendations 118. For example, as shown in FIG. 2A, when a userhovers over an image 115, a user interest icon 117 is displayed. Userinterest icon 117 can display a brief abstract of the content associatedwith the image 115. User interest icon 117 displays a “thumbs up”approval 117 a, “thumbs down” disapproval 117 b, and a noncommittal“save” selection 117 c. A user can select one of these options toexpress approval, disapproval, or not commit to a certain image. Thesetypes of input from a user are referred to as “active” input. As will bediscussed in further detail below, a user's interests can be weightedbased on this active input as well as other types of user-expressedinterest. A selection of “save” 117 c may be considered as a “softlike”. In other words, a “save” may not be given the same weight as a“thumbs up” but still may be given some small weighting since the userhas expressed enough interest to save the image for later consideration.

FIG. 2B illustrates a page that is presented to the user after the userhas selected a “thumbs up” 117 a on the user interest icon 117. FIG. 2Balso illustrates an embodiment where the images 115 in imagerecommendations 114 are not linked to the feeds displayed in textrecommendations 118. In the text recommendations 118, the abstracts havechanged to reflect feed content related to the specific image 115 thatthe user has selected. FIG. 2B also illustrates that the user can returnto content related to the other images 114 by selecting a refresh icon120. Anytime refresh icon 120 is selected, the system understands thisto be a general request for different content from the recommendationengine. When this icon 120 is selected, the recommendation system isrefreshed to if provide the most current information that relates to theuser's interests. A “saved” icon 122 can also be used to restore imagesthat had previously been saved by the user for consideration fromselection such as “saved” 117 c selection depicted in FIG. 2A.

As mentioned above, in one embodiment, the text recommendations 118 andimage recommendations 114 may also be interlinked. For example, a usercan hover over an image 115 and a popup abstract 117 containing asummary of the feed content related to that image. Selecting the image115 causes one or more feed content in text recommendations 118 relatingto that image to be highlighted (such that a user can easily findspecific feed content related to that image). As described below infurther detail, the present invention includes methodologies forpersonalizing the image recommendations 114 and/or text recommendations118 using active and passive personalization techniques.

Thus, FIGS. 1, 2A and 2B illustrate exemplary screen shots that can beinitiated using a bootstrap image cloud. FIG. 3A illustrates anexemplary method for personalizing content for a particular user usingan image cloud, the method including, at 302, displaying a image cloudhaving a plurality of images being grouped and displayed adjacent or inclose proximity with each other in one predefined area to minimizecontent between the plurality of content images so as to minimizenavigation methods required to locate the plurality of images. Anexample of the bootstrap image cloud is depicted in FIG. 1, althoughvarious ways of arranging the images in the bootstrap image cloud arepossible within the broad scope of the definition of a bootstrap imagecloud and consistent with the teachings herein.

Further, the images in the bootstrap can represent different ideas. Forexample, as discussed above, each of the images in the bootstrap imagecloud can be associated with a category, with each of the imagesrepresenting a different category. Alternatively, each of the images inthe bootstrap image cloud can be associated with an interest andinterest set based on actual content of the image.

The method includes, at 304, receiving input from a user selecting atleast one image on the image cloud, at 306, accessing a plurality ofcontent feeds related to the at least one image selected by the user(e.g., based on the category or feature/interests associated with theimage), at 308, accessing a plurality of displaying the plurality ofcontent feeds along with the plurality of images. The method can furtherinclude, at 312, receiving input from a user selecting at least onecontent feed or at least one content image, and at 314, renderingcontent related to the selected content feed or content image. Thebootstrap image cloud thus serves as a means for obtaining an initialunderstanding of user interests to be able to present content that ismore likely to be of interest to the user.

Of course it will be appreciated that once a user seeds her interestsusing, for example, bootstrap image cloud (FIG. 1) or subsequent use ofthe recommendations page (FIG. 2A), that a user can access therecommendation service 100 directly through the recommendations page 106without having to go to the bootstrap image cloud again. However, a useris always free to restart the recommendation service and go back throughthe bootstrap image cloud, if desired.

FIG. 3B depicts an exemplary method for personalizing content for aparticular user using a recommendation image cloud, the methodincluding, at 320, identifying a user profile, at 322, using the userprofile to identify a plurality of images associated with feed content,and, at 324, displaying the plurality of images on a user interface, theplurality of images being grouped and displayed adjacent or in closeproximity with each other in one predefined area to minimize contentbetween the plurality of images so as to minimize navigation methodsrequired to locate the plurality of images. When a user positivelyselects an image, feed content associated with the image can bedisplayed. As mentioned above, if the image and feed content are bothalready displayed, selecting the image may highlight the associated feedcontent. In any case, when a user positively or negatively selects animage, the user profile can be updated accordingly.

In one embodiment, the bootstrap image cloud can be used to develop auser profile, described in further detail below. In embodiments wherethe bootstrap image is related to categories, the category can be addedas a feature to a user profile and affect an associated interest of theuser profile. In embodiments where the bootstrap image has associatedprofile of feature vector(s) and/or interest vector(s), the featurevector(s) and/or interest vector(s) of the bootstrap image can be usedto start or update a user profile.

Turning to FIG. 4A, “what's hot” tabulation 110 has been selected topresent a popularity content page 130 that provides additional contentto a user based on popularity. Popularity can be based on variousdemographics including, but not limited to, what's popular in the user'ssocial network, what's popular in a geographic region (whether globally,nationally, regionally, and/or locally), or what is popular with usersof a particular gender, race, age, religion, interests, and the like.Popularity can be measured by number of views, rankings, number ofcomments, and the like, among the defined demographic. The defaultdemographic can be based on what is popular for the country in which theuser resides. The image popular content 132 and text popular content 134can operate substantially similar to the image and text recommendations114, 118 of FIG. 2B.

FIG. 4B depicts an exemplary method for personalizing content for aparticular user using a popularity image cloud, the method including, at402, identifying one or more popular topics, at 404, using the one ormore popular topics to identify a plurality of images associated withthe one or more popular topics, the plurality of images being associatedwith feed content, and at 406, displaying the plurality of images on auser interface, the plurality of images being grouped and displayedadjacent or in close proximity with each other in one predefined area tominimize content between the plurality of images so as to minimizenavigation methods required to locate the plurality of images.

FIG. 5A illustrates a search page 150 that can be accessed, for example,by selecting tabulation 152. The search results page 150 includes asearch field 112 that a user can use to find content of interest. Likethe recommendation page, search results on the search page 150 can bedisplayed by an image search results 154 that pictorially displays thesearch results in the form of images, such as 156. The search images canalso be referred to as a “search image cloud.” Search results page 150may also include search results in the form of text search results 158.Image search results 154 and text search results 158 can operatesubstantially similar to image and/or text recommendations 114, 118 ofFIG. 2B.

FIG. 5B depicts an exemplary method for personalizing content for aparticular user using a search image cloud, the method including, at502, identifying a search request including one or more search terms, at504, using the one or more search terms to generate a search resulthaving feed content, at 506, using the feed content to identify aplurality of images, and at 508, displaying the plurality of images on auser interface, the plurality of images being grouped and displayedadjacent or in close proximity with each other in one predefined area tominimize content between the plurality of images so as to minimizenavigation methods required to locate the plurality of images.

Advantageously, providing the bootstrap image cloud 105, recommendationspage 106, popularity page 130, and/or search page 150 using imagecontent and/or text content, provides various sources of content thatallows a user or third person (i.e., visitor) to visually see what is orpotentially could be important to a user to better personalizerecommendations and searches to a user. User interaction with any ofthese sources affects a user profile, which, in turn, affects subsequentcontent that is presented to the user. For example, when a userinteracts with the popularity page 130 and search page 150, suchinteraction affects content presented on the recommendations page 106.Of course, other ways of recommending and obtaining user interestactivity can be implemented in combination with one or more of thesetypes of content delivery. For example, a wild card page could be addedthat allows a user to simply view an assortment of random content to seeif any of the random content catches the user's interest. Or, the usercould access a topographical page that lists any number of potentialinterests by alphabetical order. Similar to the initial images 104, theuser could select on any of these images and/or text results which wouldprovide additional information to personalize content for a user.

It will be appreciated that the image cloud/text content paradigm may beused in other contexts other than recommendations, popularity, andsearch results. For example, this same paradigm could extend to channelbased content and programming. In one embodiment, a commerce servicemight have a page specifically directed to real estate. When a useraccesses the real estate page, potential real estate recommendations canbe presented to the user based on, among other things, the user'spersonalization profile. Thus, potential real estate content is matchedup with user interests for that particular content page, presentingproperties in an image cloud and presenting text recommendations aboutproperties, schools, or other aspects of that geographical area.

In another example, a page about a particular topic can be programmed topresent an image cloud and text content based on one or more users'interest in that topic. In contrast to a standard dynamic web page thatdisplays preprogrammed images and text about a topic, a communitygenerated page is actually built from what one or more user profilesthat have a current interest in the topic as opposed to what aneditorial publisher ‘thinks’ readers are interested in. Thus, thecommunity-generated page will dynamically change as the interests of thecommunity changes.

The content presented to a user can depend on the classification of theuser. For known users and anonymous users, the personalizationattributes of the recommendations page 106, popularity page 130 andsearch page 150 will be fully functional based on the user's profile.However, for opt-out users where a user profile is unavailable, othermechanisms are used to provide content for the popularity page 130 andsearch page 150 so that they appear to have personalization attributes.

Social Interactivity

The present invention allows for various levels of social interactivitywith regard to active and passive personalization. The above describesproviding bootstrap, recommended, popular, and searched content in theform of image clouds and/or text based on a user's interests. Anotherway to view a user's interests is to view a user profile. FIGS. 6Athrough 12 illustrate various aspects of social interactivity that canoccur through displaying a user's and other third party profiles.

Besides directly accessing a user profile page, the user can access herprofile while in other content areas of the site. For example, as theuser is interacting with the dynamic aspects of the recommendation pagedescribed above, a social network icon (not shown) can be located invarious content areas of the personalization service to allow a user tobe directed to her user profile. As shown in FIG. 6A, a user'spersonalization page may have a user profile, denoted as “brainwaves”tab 184 that redirects the user to her own profile image cloud.

As shown in FIG. 6A, profile image cloud 200 depicts a user's interestspictorially via one or more images 202. The difference between images202 of FIG. 6A and images 114 of FIG. 2B is that in the profile imagecloud, the images 202 are not necessarily tied to feeds that arecurrently available. That is, the images 202 visually represent a truedepiction of a user's interests at that point in time. A profile imagecloud enables the user or a third party to easily capture the userinterests in a visually appealing manner as well as conveying a largeamount of information than could be conveyed using simple text. Theimages in the profile image cloud are grouped and displayed adjacent orin close proximity with each other in one predefined area. The placementof the images minimizes content such as text, spacing or other content,between the images. Thus, a profile image cloud visually representsinformation about the user in the form of images in a manner that a useror other third party can easily comprehend the images. Such userinformation that can be visually represented by an image cloud includesinformation about topics or categories, brands, sports teams,activities, hobbies, TV shows, movies, personalities, or any otherinterest that can be visually depicted.

In addition to visually depicting a user's interests, the images in theprofile image cloud are interactive which enables a user or third partyto view and/or select images in the image cloud without requiring a useror other third party to use extensive navigation methods to find images,such as scroll bars, excessive mousing movements, extensive windowresizing, or the like. Thus, the profile image cloud also minimizes thenavigation methods required to locate and/or select the plurality ofimages visually representing information of interest about the user.

FIG. 6B depicts an exemplary method for personalizing content for aparticular user using a user profile image cloud, the method including,at 602 identifying a user profile, at 604, using the user profile toidentify a plurality of images associated with the user profile, and, at606, displaying the plurality of images on a user interface, theplurality of images being grouped and displayed adjacent or in closeproximity with each other in one predefined area to minimize contentbetween the plurality of images so as to minimize navigation methodsrequired to locate the plurality of images.

The size, shape and/or layout of the images in the user profile imagecloud can vary based on design considerations. For example, not allimages in an image cloud may have the same level of user interest.Profile image cloud 200 illustrates that images can be displayed indifferent sizes, which is one example of varying the display of imagesto reflect varying levels of interest (with larger sizing reflectinggreater interest and smaller sizing reflecting less interest). In oneembodiment, interest level can be based on how many of the features ofan image match the features of a user profile.

The method further includes detecting a change in the user profile,selecting new images to be included in the plurality of images, anddynamically changing the display of the plurality of images with theselected new images in a manner substantially real-time with thedetected change in the user profile. Thus, the profile image cloud canbe refreshed as the user's profile and interests change. The user'sprofile can change based on active and passive personalization, asdiscussed below. Having image clouds that are interactive is one exampleof active personalization. The user can interact with her own userprofile as well as the user profiles of other third parties, such as,but not limited to, buddies, celebrities, and communities, as will nowbe described.

FIG. 6A also illustrates a user's social network 206, which lists one ormore buddy icons 208. As shown in FIG. 6A, the icons 208 related to eachbuddy may reflect how similar or dissimilar the buddy is to the user.Displaying buddies based on similarities/dissimilarities provides aninteractive way for the user to identify with buddies in her socialnetwork. Buddy displays can be dynamically updated in real time so thatthe user can view how her buddies' interest compare to hers over time.While FIG. 6A shows that similarity/dissimilarity of buddies is shown bydisplaying icons 208 of different sizes (with larger size indicatingmore similarity and smaller size depicted less similarity), othermethods can also be used including, but not limited to sizing, differenticonic symbols, color, graphics, text, transparency, and the like.

Upon selecting a first buddy 208 a, as shown in FIG. 7A, the buddy'sprofile image cloud 210 is displayed containing images 212. A user isthus able to view the buddy's interests. For example, if it is nearingthe buddy's birthday, the user may view a buddy's interests to get ideasfor gifts. The user can also approve/disapprove of as many of the images212 displayed in the buddy's profile image cloud as desired via a userinterest icon 214 that appears when the user hovers over the image. FIG.7A illustrates the user selecting image 212 for buddy 208 a. The usercan also select image 213 for buddy 208 b as shown in FIG. 7B and image215 for buddy 208 d as shown in FIG. 7C. In other words, the user canview and/or comment on the images in any of her buddy's profile imageclouds. Advantageously, this provides a simple, visually appealingmethod for allowing a user to view, adopt, and/or disagree with theirfriends' interests.

FIG. 6A also illustrates that profile image clouds of other entities mayalso be viewed and/or accessed by the user. For example, celebrities 220is another category in which entities may be identifiable. As shown inFIG. 7D, when the user selects celebrity 220 a, the user can view thecelebrity profile image cloud 222 containing images 224 and canapprove/disapprove of any or all of these images. In one embodiment, acelebrity profile image cloud 218 may not be a true depiction of thecelebrity's interests, but rather a public persona that the celebritywishes to project. For example, a movie star celebrity may only wish tohave predefined features pertaining to material that promotes his/herpublic image represented in the celebrity profile. This illustrates theflexibility of the present invention in a user being allowed to developvarious personas that can be projected via image clouds. Of course, theability to have multiple personas extends to any user, not justcelebrities. So, if a user wants to make available one persona tocertain members of its social network, but another persona to the restof the world, the user can activate and/or deactivate certain featuresthat the user has in her profile.

Referring back to FIG. 6A, another category in which entities could beplaced is communities 230. Communities include a composite profile oftwo or more entities. For example, the profiles of all of a user'sbuddies may be merged to form a composite profile and displayed via asingle “all buddies” profile icon 230 a. Another type of community canbe created based on geographic region. For example, the system mayprovide a view of the combined user profiles in the community of NewYork City 230 b, or the community of California 230 c, which the usercan select to view an image cloud representing what the collective usersof those regions are currently interested in. Thus, a community profilecan be defined by various demographics including, but not limited to,the user's social network, a geographic region, or users of a particulargender, race, age, interests, and the like.

A user can view and interact with the celebrity and community profilessimilarly to how is done for buddy profiles. Upon receiving these userinterest activities, the system updates the user's profile, which, inturn, updates the user's profile image cloud 200A, shown in FIG. 8. Asshown therein, the user's profile image cloud has changed to reflectimages 212, 213, 215, 224 that are also a part of the user's buddies'profile image clouds. As will be appreciated, by the user adopting theseimages and their corresponding features and/or interests into the user'sown profile, the user's profile will be correspondingly updated.

The user's social network may provide enhanced features which assist auser in identifying third party profiles (including buddy, celebrity andcommunity profiles). As mentioned above, similar or dissimilar profilescan be identified to the user. Similarity can be broadly or morenarrowly tailored depending on the level of profiling utilized. Aparticular user can have more than one profile associated therewith. So,if the user wants comparisons performed based on one or more profiles,the one or more profile can be matched up with third party profileshaving the same feature vector(s) and/or interest vector(s). One exampleof where this can be useful is when a user wants to know which of herbuddies is like-minded right now. When buddies having the same orsimilar profiles identified, the user can start an IM session with oneor more of those buddies. The same methods can be applied to findbuddies who have completely different profiles, celebrities who have thesame profile, a dating prospect who has similar profiles and is in theirsame location, or for other purposes. In one embodiment, the display ofsimilarity or dissimilarity of buddy profiles can be dynamicallyadjusted in real time as the user and the user's buddies change theirinterests over time.

A user may share her updated profile with other users through a sharingtool. The user may also view updated recommended feed content based onthe user's updated profile, such as by selecting an icon 228. FIG. 9illustrates that recommendation content can be dynamically updated basedon changes in the user's profile. FIG. 9 also shows another embodimentfor displaying recommended feed content. As shown, an inbox 166 now hasupdated feed content 170 related to the images that the user acceptedfrom the profiles of other users in her social network. Furthermore, arecommendation image cloud 186 is displayed showing images relating tofeeds currently available related to the user's profile.

In some embodiments, when a user views a particular content item, suchas an article, the user can request to find other third partylike-minded users with the same level of sameness or importance as thefeatures of the article. The user is then presented with a list ofpeople who might be interested in the same content item (i.e.,like-minded users). For example, the list of third party interestedpeople may be listed as part of the buddies list 208 or mayalternatively be positioned in the user interface in the same locationas the buddies list 208. Of course, the list of third party interestedpeople may also be placed in other locations in the user interface.

The list can also display which of these third party like-minded usersis actually reading the same or similar article and whether the thirdparty like-minded users are presently online. If the third partylike-minded users are presently online, the user can initiate an IM orchat conversation with these like-minded users. In some embodiments, thelist may also indicate the physical location of the third partylike-minded users. This may be useful in finding dating prospects orperhaps another student for collaboration on a school project.

In other embodiments, the user can request that the article be sent tothese other third party like-minded users as they likely have aninterest in the article. Or, the system can transparently recommend thearticle be sent to another third party like-minded user the next timethe like-minded user access the system.

Acknowledgment of the content item by the user and/or third partylike-minded users constitutes user interest in the content item. It ispossible that the user actually dislikes the article and wants tocriticize the article with other users. Any of these user interestactivities update the user's profile, which, in turn, updates the user'sdisplay image. A third party like-minded user's profile will similarlybe updated based on user interest activities expressed by thelike-minded user.

For privacy concerns, the user can limit the types of third partylike-minded users that will be included in the list. For instance, auser may limit the list to third party users who are part of her socialnetwork, such as those members of buddy list 208. In other embodiments,the list may be limited to those members of the user's social networkand any third party member who belongs to the social network of those inthe user's social network. For example, the list may be limited to theuser's buddy list and to any user included in a buddy list of a memberof the user's buddy list. Of course, it will be appreciated that thelist of third party like-minded users may be limited in numerous otherways as circumstances and user's preferences warrant.

Turning now to FIG. 13, a method to personalize content for a particularuser using a computer system including a user interface configured todisplay content is illustrated. The method includes, at 1302,identifying a content item accessed by a user and, at 1304, identifyingfeatures associated with the content item. For example, the user mayaccess an article that includes several features. The method furtherincludes, at 1306, using the features of the content item to identifyone or more third party profiles that substantially match a contentprofile of the content item, and, at 1308 displaying a list of theidentified third party profiles. For instance, one or more third partyusers with interests that substantially match the profile of the articlemay be identified and may be listed for the user.

In some embodiments, the method may further include determining that oneor more third parties are online and displaying the online third party.A request for by the user to initiate an online chat may then bereceived. In some embodiments, the physical location of the online thirdparty may also be determined and displayed.

In still other embodiments, the method may also include receiving arequest from the user to provide the content to the interested thirdparty. This may be done in real time or at a later time when the user isnot online.

The method may also include identifying user interaction with thecontent item. This user interaction may be used to then update theuser's profile and display image based on the interaction.

The foregoing thus illustrates the ease by which the user can readilyadopt interests in an active and engaging manner using a social network.

Concepts of Personalization

As illustrated in the exemplary screen shots of FIGS. 1 through 9, oneaspect of the present invention is to associate users with personalizedcontent on a real-time basis. The goal of personalization is to createdesirable perceptions and responses from the user and encourage a userto continue to use the system while avoiding those undesirableperceptions that discourage users from using the system.

Desirable Perceptions from the point of view of a user: (1) seeing whatthe user wants; (2) anticipating user interests; (3) changingrecommendations when the user wants; and (4) having a user readeverything recommended. Perceptions to avoid from the point of view ofthe user: (1) avoid delivering the same content; (2) avoid recommendinguseless content; (3) avoid delivering old content when the user reallywants something new; (4) avoid delivering content on only a few of theuser's interests—if the user has a lot of interests, provide content onas many interests as possible; and (5) avoid staying on an interest whenthe user has moved on to generate different interests.

The image clouds used for the initial interests conversation starter(i.e., bootstrap), profiles, recommendations, popularity content, and/orsearch content, facilitate personalization by making the personalizationexperience more appealing and intuitive for the user. Images aregenerally easier for user to quickly assimilate and comprehend than thetext used to describe the same concept. While the image clouds of thepresent invention are not limited to any particular personalizationsystem, one exemplary network environment for implementing apersonalization system will now be described.

FIG. 10 is a diagram of an exemplary embodiment of a system 1000 forpersonalizing content to a user. As shown in FIG. 10, images and feedcontent, such as articles in an online publication, are stored in adatabase or other content repository 1004 at a content site 1002.Content site 1002 also includes content server 1003, which is coupled tocontent database 1004. The embodiment described herein uses the Internet1015 (or any other suitable information transmission medium) to transmitthe contents from content server 1003 to a computer 1010, where thecontents are viewed by a user via a web browser, or the like. In anexemplary embodiment, HTTP protocol is used for fetching and displayingthe contents, but any suitable content display protocol mayalternatively be employed.

In order to personalize the information for a particular user, a loginserver 1013 is provided to identify each unique user through a loginprocedure. Of course, some users will not be identifiable but may stilluse the system as an anonymous user. In the presently describedembodiment, information associated with a given user is divided into oneor more databases (or any other type of content repository). One server1006 contains information facilitating user login and passwordregistration, and a second database 1007 is used to store user profiledata. Profile database 1007 contains user profiles, versions of userprofiles (or snapshots), and earmarks separate user profiles. Data inprofile database 1007 is used by a ranking engine 1005 to rank content,contained in content database 1004, for each user.

Various other databases may hold information that can contribute topersonalizing content for a user. A dictionary database 1011 storesthousands of potential features. Currently, the dictionary database 1011can use a repository of over 25,000 computer-generated features.Additionally, the present invention allows a user to add to thisrepository. For example, when a user types in a word that is not foundin the repository, but the system determines that that word is asignificant term that should be included in the interest, that term canbe added to the repository for future reference. Terms in the repositorycan include lists of significant persons or places, for example,musicians, rock groups, sports figures, political figures and otherfamous people. Terms in the repository can also be in differentlanguages.

A user history database 1014 holds information relating to a userhistory where for users who are anonymous. A relevance database 1012holds data relating to content relevance values which represent thestrength of reader's preference for viewing a given content item. Forexample, the relevance database may hold rankings, read history, and thelike for particular content items.

The present invention also contemplates that advertisement content canbe personalized and presented to a user. Thus, as shown in FIG. 10,ranking engine 1005 may communicate with an advertisement database 1009and advertisement server 1008 to rank and present advertisement content(whether images, feeds, or other type of content), to a user.

While ranking engine 1005 is shown as a single element, ranking engine1005 can include a plurality of servers that are each configured toperform one aspect of personalization in parallel, thus distributing theprocessing requirements. Furthermore, all of the elements shown to theleft of internet 1015 can be part of the same site, or, alternatively,can be distributed across multiple sites and/or third party sites.

Thus, any entity (i.e., users and/or content) can be assigned one ormore features which can then be used to determine interests to generatea profile for that entity. Features can be visible or transparent. Thatis, some features may be viewable, selectable, and/or usable by users.Other features, however, may be unviewable, unselectable, and/orunusable by users. For example, computer generated significant featureswill unlikely be human consumable. However, features such as people,places or categories will likely have a human readable form.

In one embodiment, computer generated interests are created by analyzinga broad set of textual information related to an entity and determiningwhich words and phrases are significant for a particular entity. Forexample, with regard to a group of articles, interests can be definedfor each article and used to distinguish one article from another. Aswill be described below, a composite profile can also be created for thegroup of articles. The computer generated features can be determined byanalyzing articles, search logs, and the like in order to mine thisinformation. In one embodiment, duplicated phrases are eliminated withina particular interest.

In another embodiment, features can be defined from different sourcesother than being computer-generated. For example, users may be able todefine certain features (such as tagging). Or, the features may beavailable from demographic information, such as names or places. Inthese cases, the features may be in human readable form.

In one embodiment, a computer-generated feature software analyzescontent and determines significant words related to these articles. Inone example of an article, features for identified to create a featurevector for the article. In addition, an interest vector for an articlecan be created by counting all the occurrences of each word in thearticle and creating an interest vector whose components comprise theword frequencies. The article can thus be represented by a point in ahigh-dimensional space whose axes represent the words in a givendictionary. The software attempts to eliminate words that are toocommonly used that don't contribute to determining a unique feature(e.g., ‘stop words’ such as “the,” “an,” “and,” etc.). Stems of wordsare used so that, for example, “see” and “seeing” are considered to bethe same word.

The software can identify features such as categories (e.g., science,education, news) and can identify features that are meaningful in thatparticular context. The reverse might also be true where the softwareconcludes, based on identifying certain meaningful words that thecontent item belongs to a particular category. In some cases,recommendations can then be based on a category, which providespotential content recommendations. For example, a user may beginexpressing interest in a particular sports figure. However, if itbecomes apparent that a user wants content about anything relating tothe sports team to which the sports figure belongs, the system canrecommend more content on the feature that is category-based, ratherthan specifically using the sport figure's name as a feature.

The present invention also assigns an interest weighting to each featurefor each entity or group of entities. In one embodiment, certainfeatures can have a greater weight than others. For example, names ofpeople may carry a greater weight than computer generatedwords/features. Furthermore, interest can be presented both positivelyand negatively. For example, a negative rating from a user may assign anegative interest to a feature.

Thus, embodiments of the invention are directed to determining a set ofsignificant features to create feature vector(s), attaching weighting tofeatures to create interest vector(s), resulting in profiles. Theinvention also includes comparing, combining and/or ranking profiles.Various algorithmic models can be used to implement embodiments of thepresent invention. The present invention contemplates that differenttest implementations could be used with users being able to vote orprovide input on the best implementations. The ‘engine’ that drives thistest bed is relatively flexible and easy to modify so that a reasonablylarge number of permutations can be tried with a flexible user interfacethat allows users to easily provide input.

The system of the present invention performs the above functions byusing feature vector(s) and/or interest vector(s) to create one or moreprofiles for each entity. The profile of an entity forms the input tothe adaptive ranking engine 1005. Since the present invention accountsfor the possibility of negative interests, it is possible to account fornegative data. The output of the ranking engine is a value whichrepresents the strength of a particular user's preference for readingthat particular content item. In this manner, content items of any typecan be rank ordered by the numerical value of the output of the rankingsystem. This allows for comparison-type functionality such as displayingimages in image clouds, how similar/dissimilar entities are from eachother, and the like.

With reference to FIG. 11, together with FIG. 10, an exemplaryembodiment 1100 of processes and systems for generating a feature vectorand an interest vector for a content item is depicted. When a contentservice 1101 (which could be the content site 1002) identifies articlecontent 1102, an interest extractor 1104 (which can be part of rankingengine 1005) evaluates all or some of the article contents 1102 (e.g.,headline, title, lead, summary, abstract, body, comments) to determinefeatures and frequency of features. It may, in some cases, beadvantageous to use more than just the headlines of news articles toperform the profiling because of the small number of words involved. Insuch cases, it is possible to include a summary of the article for usein generating the profile. The full article is likely to be too long andmay slow down the computation of the ranking engine. A summary allows aricher and more specific match to user interests. A summary may consistof the first paragraph of a news story or a more sophisticated naturallanguage processing method may be employed to summarize the articles.Summaries generally lead to better precision in ranking articlesaccording to user preferences than leads but may not be quite as preciseas whole articles. However, the use of summaries is likely to providebetter computational performance than the use of entire articles due tothe fewer number of words involved.

An article 1102 is only one example of an entity that can be evaluatedto generate a profile. Other entities can be used, but for purposes ofthis description, an article will be described. In one embodiment, theinterest extractor 1104 extracts features based on their existence inthe text and/or metadata associated with the entity. The interestextractor 1104 can match every 1, 2 and 3 word phrase against thedictionary 1011 to determine if certain phrases contain significancewithin the article. The interest extractor 1104 can add categoryfeatures based on the source of the article. In one embodiment, thecontent of an article can be normalized to speed of processingrequirement of interest extractor 1104. For example, text can benormalized using, but not limited to lower casing all alpha characters,maintaining all digits, removing all punctuation, removing excess whitespace, removing stopper words, and the like.

The interest extractor 1104 calculates an interest weighting for eachfeature depending on its significance to produce the Profile. Interestscan be attached to the features by various methods based on, but notlimited to, arbitrarily setting an interest for each feature to 1,frequency of occurrence of the feature in the content, location of thefeature in the article (e.g., the title gets more weight than thedescription/summary), bolded text gets more weight, features closer tothe beginning get interest weighting, and the like. Generating profilesfor content items using interest extractor 1104 can be preprocessed andstored in a database, or, can be performed in real-time as the contentitem is identified. In one embodiment, the feature vectors and interestvectors are stored in separate databases with pointers referring to eachother and to their respective content item.

The interest extractor 1104 also identifies a “maximum score” that canbe attributed to an entity by summing the positive interest vectors ofall of the features. This maximum score can then be used to normalizeranking scores. The interest extractor 1104 may also take into accountnegative interest vectors. This can be valuable if contra-indicativefeatures are detected. In the example of ‘fender’ and ‘amps’, ‘fender’can mean a car fender or a brand of sound amplifiers. The distinctionmay be the existence of ‘amps’ contra-indicating cars but positivelyindicating music. Thus, an article profile having one or more featurevectors and one or more interest vectors (denoted as article interests1105) is generated.

A duplicate detection module 1106 (which can also be part of rankingengine 1005) determines whether the article 1102 is a duplicate. Theduplicate detection 1106 accesses an article index 1114. In oneembodiment, the duplicate detection 1106 uses the title and summary ofthe entities or articles to determine if they are duplicate. Theduplicate detection 1106 can be engaged by certain triggers, forexample, if at least 75 percent of the article can be understood usingfeatures (in other words, the system knows enough about the article tounderstand its significance), duplication analysis can occur on thearticle. In another embodiment, duplicate detection 1106 compares thefeature vector and/or interest vector of the article 1102 to all otherpreviously evaluated articles to determine if “sameness” or “importance”exists. In one embodiment, article 1102 may actually be slightlydifferent than another article (e.g., written by different pressagencies). However, if the sameness and importance of both articles aresubstantially the same, the duplicate detection 1106 determines that thetwo articles are duplicates for purposes of determining that a user doesnot want to be presented with two articles having substantially the samecontent and substantially the same importance level assigned to thecontent.

A tolerance range can be established to determine when articles orentities exhibit duplicity. For example, if the two entities beingcompared have a 95% sameness with regard to title/summary evaluation orfeature/interest evaluation, then the articles could be consideredduplicates. Other tolerance ranges are possible, and the user may beable to define the stringency level of the tolerance range.

Thus, if duplicate detection 1106 identifies article 1102 as aduplicate, the article 1102 can be stored as a duplicate set 1108. Inone embodiment, duplicate articles are stored in sets, only the originalarticle in the set being indexed by indexer 1112 (which can be part ofranking engine 1005). Indexer 1112 optimizes indexed search performanceso that the ‘best’ article in the set is returned when the indexedarticle is recommended. ‘Best’ can be defined as the article from themost reliable source or the most recent version of the article.

In one embodiment, a source quality module 1110 can be used to determineif two articles having similar sameness and interest have differentquality. That is, one may come from a more reliable source than theother (e.g., Reuters v. blog). So, if there are duplicate articles andarticle 1102 comes from a more high quality source, then the bestarticle will be indexed by indexer 1112 as the ‘best’ article in the setto be returned. In one embodiment, the ‘best’ article may be stored in acache to speed retrieval of the article.

Indexer 112 creates an inverted index 1114 of the interests of an entityor article. The first time an article 1102 is identified (i.e, not aduplicate), indexer 1112 indexes article 1102 along with anycorresponding profiles, metadata, or other searchable data and storesthis indexed data in article index 1114 so that the article 1102 can beeasily identified in storage or otherwise accessible by the systemand/or a user. The next time a duplicate of article 1102 is identified,the indexed data is already stored in article index 1114. So, theduplicate article 1102 can simply be stored in a duplicate set with theoriginal article 1102. The duplicate article 1102 and the originalarticle 1102 are analyzed to determine which comes from the mostreliable source. The highest quality article is flagged to be returnedwhenever a request is made to access an article from that duplicate set.Subsequent duplicate articles are analyzed to determine whether they arehigher quality than the previous highest quality article and, if so, areflagged as the current highest quality article. The information induplicate set 1108 and/or article index 1114 then becomes available forfinding profiles for static entities, combining profiles of staticentities together with other static entities and/or dynamic entities,and/or comparing and ranking profiles of static entities and/or dynamicentities to each other. For example, a user could identify a feature andthe indexer would return all of the entities that have an interest inthat feature.

FIG. 12 depicts an example of profile in a two-dimensional form with ahorizontal continuum of features representing potentially thousands ofwords and vertical bars representing the interest assigned to eachfeature or word. Where the horizontal continuum represents potentialwords in a dictionary, each word assigned to an ith position, and thehorizontal line represents a zero value vector and above the horizontalcontinuum represent a positive value and below the horizontal continuumrepresents a negative value, the profile of the entity shown in FIG. 12could be represented as

-   -   (0, 5, 0, 0, −3, 0, 3, 0, 0, −5, 0, 0, 4, 0, 0, 1, 0, 0, −1, 0,        0, 0, 3 . . . )        where a position, 0 or negative value is placed in each Wi        position to represent the level of importance of that feature.        The interest vector is based on the frequency of that term in        the content item, although the interest vector could be based on        other factors as discussed above. In some embodiments, static        content may have mostly zeros and positive values, although, as        shown here, it is possible for static content to also have        negative value associated therewith. Words in the content that        are not in the dictionary can either be ignored, or the        dictionary can be expanded to contain additional Wi words, as        mentioned above.

It will be appreciated that the feature vectors and interest vectors canbe represented in three-dimensional form. In the three-dimensionalanalysis, content items containing similar concepts are found closetogether. On the other hand, dissimilar content items are far apart asgiven by a distance measure in this space. A typical metric, well-knownin the art, representing the distance between two content items in thisvector space is formed by the normalized dot product (also known as theinner product) of the two vectors representing the content items.

Generally, it is desirable to enable profiles to have both featurevectors and interest vectors that are reflective of the amount ofinterest that a particular user or content item has for a particularfeature. However, in some embodiments, it may be easier to simply useonly a feature vector with a binary frequency (i.e., a count of either 1or 0) for each word as a very good approximation. For example, forheadlines and leads, word frequencies are rarely greater than one. Inthis sense, the feature vector would also produce a binary interestdescriptor, so as to simplify implementation of the present invention.

The present system uses profiles to generate personalized content. Userprofiles can be generated in various ways. In one example, a userprofile may be a combination of all of the profiles of the content itemsthat have been viewed by the user with old content items eventuallydropping off the user profile so as to be more reflective of a user'scurrent interests. In another embodiment, user profiles can be acombination of user viewing history as well as user ratings so that theuser profile can have negative interest values associated therewith todetermine what the user is not interested in. User profiles can begenerated by evaluating active and passive behavior of the user. Userprofiles are also able to reflect positive interest in certain contentas well as negative interest.

Generally, a user profile can generally have long feature vector(s)and/or interest vector(s) while the length of a feature vector and/orinterest vector for other content types such as feed content, article,documents, images, and the like, is generally shorter. Therefore, thepresent system measures distance between the long vectors of the userprofile and the short vectors of other content items. These shortvectors, in one embodiment of the invention, may have binary componentsrepresenting the positive presence, or negative presence of each word,thereby simplifying the computation of content relevance. The rankingengine may use the profiles for users to identify one or more contentitems that the user would likely be interested in reading. Variousalgorithms can be used by ranking engine 1005 such as, but not limitedto, Rocchio's method, Naive Bayes or other Bayesian techniques, SupportVector Machine (SVM) or other neural network techniques, and the like.

Since the present invention is not dependent on a particular type ofpersonalization algorithm to generate content, further personalizationalgorithms will not be described in order to prevent obscuring thepresent invention.

Embodiments include general-purpose and/or special-purpose devices orsystems that include both hardware and/or software components.Embodiments may also include physical computer-readable media and/orintangible computer-readable media for carrying or havingcomputer-executable instructions, data structures, and/or data signalsstored thereon. Such physical computer-readable media and/or intangiblecomputer-readable media can be any available media that can be accessedby a general purpose or special purpose computer. By way of example, andnot limitation, such physical computer-readable media can include RAM,ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storageor other magnetic storage devices, other semiconductor storage media, orany other physical medium which can be used to store desired data in theform of computer-executable instructions, data structures and/or datasignals, and which can be accessed by a general purpose or specialpurpose computer. Within a general purpose or special purpose computer,intangible computer-readable media can include electromagnetic means forconveying a data signal from one part of the computer to another, suchas through circuitry residing in the computer.

When information is transferred or provided over a network or anothercommunications connection (either hardwired, wireless, or a combinationof hardwired or wireless) to a computer, hardwired devices for sendingand receiving computer-executable instructions, data structures, and/ordata signals (e.g., wires, cables, optical fibers, electronic circuitry,chemical, and the like) should properly be viewed as physicalcomputer-readable mediums while wireless carriers or wireless mediumsfor sending and/or receiving computer-executable instructions, datastructures, and/or data signals (e.g., radio communications, satellitecommunications, infrared communications, and the like) should properlybe viewed as intangible computer-readable mediums. Combinations of theabove should also be included within the scope of computer-readablemedia.

Computer-executable instructions include, for example, instructions,data, and/or data signals which cause a general purpose computer,special purpose computer, or special purpose processing device toperform a certain function or group of functions. Although not required,aspects of the invention have been described herein in the generalcontext of computer-executable instructions, such as program modules,being executed by computers, in network environments and/or non-networkenvironments. Generally, program modules include routines, programs,objects, components, and content structures that perform particulartasks or implement particular abstract content types.Computer-executable instructions, associated content structures, andprogram modules represent examples of program code for executing aspectsof the methods disclosed herein.

Embodiments may also include computer program products for use in thesystems of the present invention, the computer program product having aphysical computer-readable medium having computer readable program codestored thereon, the computer readable program code comprising computerexecutable instructions that, when executed by a processor, cause thesystem to perform the methods of the present invention.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

What is claimed is:
 1. A system for providing personalized content,comprising: a memory device storing a plurality of instructions; and atleast one processor that executes the plurality of instructions to causethe at least one processor to: receive, from a communication device, arequest for content; determine that the request for content isassociated with an opt-out user having no user profile; identify one ormore interests of the opt-out user based on monitored online activity ofthe opt-out user; determine at least one third party profile having oneor more interests that are similar to the identified one or moreinterests of the opt-out user; and present an identification of the atleast one third party profile to the opt-out user, the at least onethird party profile being associated with recommended content.
 2. Thesystem of claim 1, wherein the at least one third party profilecomprises at least one of private profile, public profile, celebrityprofile, or community profile.
 3. The system of claim 1, wherein the atleast one processor further executes the plurality of instructions tocause the at least one processor to: display a plurality of imagesassociated with the recommended content; detect a change in the one ormore interests of the at least one third party profile; select images tobe included in the plurality of images based on the detected change; anddynamically update the display of the plurality of images to include theselected images.
 4. The system of claim 3, wherein the plurality ofimages are displayed in varying sizes based on how closely associatedeach of the plurality of images correspond to the one or more interestsof the at least one third party profile.
 5. The system of claim 1,wherein at least one third party profile includes at least one communityprofile created based on a geographic region.
 6. The system of claim 5,wherein the at least one processor further executes the plurality ofinstructions to cause the at least one processor to: determine aphysical location of one or more third party users associated with theat least one community profile; and display the physical location to theopt-out user.
 7. The system of claim 1, wherein the at least oneprocessor further executes the plurality of instructions to cause the atleast one processor to: receive a request by the opt-out user torecommend a content item to the at least one third party profile; andprovide the recommended content item to the at least one third partyprofile regardless of whether the one or more third party users isonline.
 8. The system of claim 1, wherein the at least one processor herexecutes the plurality of instructions to cause the at least oneprocessor to: identify opt-out user interaction with a content item; andpresent a second identification of the at least one third party profileto the opt-out user based on the opt-out user interaction.
 9. The systemof claim 1, wherein the at least one third party profile is limited to aset of third party profiles predetermined by the opt-out user.
 10. Acomputer-implemented method for providing personalized content,comprising: receiving, from a communication device, a request forcontent; determining, by one or more processors, that the request forcontent is associated with an opt-out user having no user profile;identifying, by the one or more processors, one or more interests of theopt-out user based on monitored online activity of the opt-out user;determining, by the one or more processors, at least one third partyprofile having one or more interests that are similar to the identifiedone or more interests of the opt-out user; and providing anidentification of the at least one third party profile to thecommunication device for display on a user interface, the at least onethird party profile being associated with recommended content.
 11. Themethod of claim 10, wherein the at least one third party profilecomprises at least one of private profile, public profile, celebrityprofile, or community profile.
 12. The method of claim 10, furthercomprising: providing a plurality of images associated with therecommended content to the communication device for display on the userinterface; detecting a change in the one or more interests of the atleast one third party profile; selecting images to be included in theplurality of ages based on the detected change; and dynamically updatingthe plurality of images provided for display on the user interface toinclude the selected images.
 13. The method of claim 12, wherein theplurality of images are provided with information for displaying theplurality of images in varying sizes based on how closely associatedeach of the plurality of images correspond to the one or more interestsof the at least one third party profile.
 14. The method of claim 10,wherein at least one third party profile includes at least one communityprofile created based on a geographic region.
 15. The method of claim14, further comprising: determining a physical location of one or morethird party users associated with the at least one community profile;and providing an indication of the physical location for display to theopt-out user.
 16. The method of claim 10, further comprising: receivinga request by the opt-out user to recommend a content item to the atleast one third party profile; and providing the recommended contentitem to the at least one third party profile regardless of whether theone or more third party users is online.
 17. The method of claim 10,further comprising: identifying opt-out user interaction with a contentitem; and providing a second identification of the at least one thirdparty profile for display to the opt-out user based on the opt-out userinteraction.
 18. The method of claim 10, wherein the at least one thirdparty profile is limited to a set of third party profiles predeterminedby the opt-out user.
 19. A non-transitory computer readable mediumstoring a computer program, the computer program including a set ofinstructions that are executable by at least one processor to cause theat least processor to: receive, from a communication device, a requestor content; determine that the request for content is associated with anopt-out user having no user profile; identify one or more interests ofthe opt-out user based on monitored online activity of the opt-out user;determine at least one third party profile having one or more intereststhat are similar to the identified one or more interests of the opt-outuser; and present an identification of the at least one third partyprofile to the opt-out user, the at least one third party profile beingassociated with recommended content.
 20. The computer readable medium ofclaim 19, wherein the set of instructions further cause the at least oneprocessor to: display a plurality of images associated with therecommended content; detect a change in the one or more interests of theat least one third party profile; select images to be included in theplurality of images based on the detected change; and dynamically updatethe display of the plurality of images to include the selected images.